package utils

import "reflect"

func InArray(arr interface{}, v interface{}) bool {
	vof := reflect.ValueOf(arr)
	if vof.Kind() == reflect.Ptr {
		vof = vof.Elem()
	}
	if vof.Kind() != reflect.Array && vof.Kind() != reflect.Slice {
		panic("arr param must to be a array or slice")
	}
	le := vof.Len()
	for i := 0; i < le; i++ {
		if vof.Index(i).Interface() == v {
			return true
		}
	}
	return false
}
